Encoding documents for digital printing is conventionally done in a document or image processing device that is typically separate from the printing device. The processing device may be a personal computer or other document/image processing/generation device. The processing device, typically, has a generic print driver application that encodes and sends documents for reproduction by a particular printer connected thereto, through a communication channel or network.
The generation of standard document types is a growing trend. Such standards have been greatly encouraged and facilitated by the use of the standard extensible markup language. However, the reproduction of standard extensible markup language is not an easy task as the standard extensible markup language has been, conventionally, converted by the user into some type of format that is readily acceptable to a printing device.
Moreover, most conventional extensible markup language processing systems have been designed to handle specific processing with respect to specific extensible markup language vocabularies. Although a few conventional extensible markup language platforms have been created for the development of different processing sequences in support of different vocabularies and workflows, these conventional platforms are still fixed and static.
Thus, it is desirable to provide an extensible markup language processing system that can efficiently print any submitted arbitrary sequence of extensible markup language vocabularies. Moreover, it is desirable to provide an extensible markup language processing system that can efficiently perform the diverse processing that submitted arbitrary sequence of extensible markup language vocabularies may require.
A processing system includes an extensible markup language processing engine and a workflow selection engine. The workflow selection engine receives workflow specifications and document fragments to be processed and outputs workflow specifications and document fragments to the extensible markup language processing engine. The extensible markup language processing engine produces a new workflow specification and a modified document fragment. The extensible markup language processing engine outputs the new workflow specification and modified document fragment to the workflow selection engine.
A workflow selection engine for an extensible markup language processing system includes an initial fragment generator to break the initial document up into document fragments and workflow specifications; a workflow specification pool operatively connected to the initial fragment generator; a document fragment pool operatively connected to the initial fragment generator; a workflow selector, operatively connected to the workflow specification pool and the document fragment pool, to determine whether resources required to support extensible markup language processing are available; and a processed fragment and workflow separator operatively connected to the workflow specification pool and the document fragment pool, to separate extensible markup language process data into processed fragments and workflow specifications. The workflow selector outputs appropriate document fragments and workflow specifications to an extensible markup language processing engine.
A method for an extensible markup language processing breaks up an initial document into document fragments and workflow specifications; pools workflow specifications; pools document fragments; determines whether resources required to support extensible markup language processing are available; processes a document fragment in accordance with an associated workflow specification to produce a new workflow specification and modified document fragment; processes a document fragment in accordance with an associated workflow specification to produce a modified document fragment; processes appropriate modified document fragments and associated new workflow specifications; and outputs appropriate modified document fragments as a final document.